DeltaTree: A Practical Locality-aware Concurrent Search Tree

نویسندگان

  • Ibrahim Umar
  • Otto J. Anshus
  • Phuong Hoai Ha
چکیده

As other fundamental programming abstractions in energy-efficient computing, search trees are expected to support both high parallelism and data locality. However, existing highly-concurrent search trees such as red-black trees and AVL trees do not consider data locality while existing locality-aware search trees such as those based on the van Emde Boas layout (vEB-based trees), poorly support concurrent (update) operations. This paper presents DeltaTree, a practical locality-aware concurrent search tree that combines both locality-optimisation techniques from vEB-based trees and concurrency-optimisation techniques from non-blocking highly-concurrent search trees. DeltaTree is a k-ary leaf-oriented tree of DeltaNodes in which each DeltaNode is a size-fixed tree-container with the van Emde Boas layout. The expected memory transfer costs of DeltaTree’s Search, Insert and Delete operations are O(logBN), where N,B are the tree size and the unknown memory block size in the ideal cache model, respectively. DeltaTree’s Search operation is wait-free, providing prioritised lanes for Search operations, the dominant operation in search trees. Its Insert and Delete operations are non-blocking to other Search, Insert and Delete operations, but they may be occasionally blocked by maintenance operations that are sometimes triggered to keep DeltaTree in good shape. Our experimental evaluation using the latest implementation of AVL, red-black, and speculation friendly trees from the Synchrobench benchmark has shown that DeltaTree is up to 5 times faster than all of the three concurrent search trees for searching operations and up to 1.6 times faster for update operations when the update contention is not too high.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Power models, energy models and libraries for energy-efficient concurrent data structures and algorithms

This deliverable reports the results of the power models, energy models and libraries for energy-efficient concurrent data structures and algorithms as available by project month 30 of Work Package 2 (WP2). It reports i) the latest results of Task 2.2-2.4 on providing programming abstractions and libraries for developing energy-efficient data structures and algorithms and ii) the improved resul...

متن کامل

Cache-Aware Virtual Machine Scheduling on Multi-Core Architecture

Facing practical limits to increasing processor frequencies, manufacturers have resorted to multi-core designs in their commercial products. In multi-core implementations, cores in a physical package share the last-level caches to improve inter-core communication. To efficiently exploit this facility, operating systems must employ cache-aware schedulers. Unfortunately, virtualization software, ...

متن کامل

Design and Deployment of Locality-Aware Overlay Multicast Protocol for Live Streaming Services

This paper presents the design and deployment of a locality-aware overlay multicast protocol called Anysee. The key idea of Anysee is to use the geometrical information of end hosts to construct the locality-aware overlay data delivery tree such that nearby users in the underlying network can be organized into nearby subtrees. The prototype of Anysee has been widely used in CERNET. Logging trac...

متن کامل

Memory Reference Locality and Periodic Relocation inMain Memory

Memory reference locality is widely known to have an increasingly important eeect on the performance of algorithms. We demonstrate and explain why the performance of the binary tree search algorithm varies considerably depending on how the tree is laid out in the main memory. We present an algorithm which relocates a binary tree so that maximal performance can be achieved and discuss how update...

متن کامل

Effects of Job and Task Placement on the Performance of Parallel Scientific Applications

This paper studies the influence that job and task placement may have on application performance, mainly due to the relationship between communication locality and overhead. A simulation-based performance study is carried out, using traces of applications as well as application-inspired, synthetic traffic patterns, to measure the time taken to complete one or several instances of a given worklo...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:
  • CoRR

دوره abs/1312.2628  شماره 

صفحات  -

تاریخ انتشار 2013